It is increasingly common for several microprocessors to be connected together within a system in which one of the processors acts as a system control processor and performs system functions. The other microprocessors are associated with specific devices and control those devices to perform specific device functions at the direction of the system control processor. An example of such a system is a storage arrangement in which several storage subsystems are interconnected. Each of the subsystems is under the control of the its own microprocessor with each of those processors having a command instruction set oriented toward storing and retrieving data from a specific storage device. The system itself typically has a control processor with a command instruction set for performing a variety of system tasks including interfacing with the storage device processors within the system and interfacing with a host system to perform storage operations requested therefrom.
It has been observed that while the system control processor and some peripheral device processors are performing work, other peripheral device processors may have a lower workload. It is therefore desirable to provide a system in which work done by the system control processor can be transferred to one of the subsystem processors with a lower workload. However, to do that, the subsystem processor must have a command instruction set like the control processor, and it must have the applications which are performed by the control processor. To provide a system in which all of the subsystem processors have the same processing power, the same command instruction set, and the same applications that are normally at the control processor is an expensive and inefficient solution. It is the object of this invention to provide a system which has the capability of downloading applications from a system control processor to a chosen subsystem processor with all of the application code, data, parameters and that portion of the system command instruction set needed to perform the application so that the subsystem processor need not be permanently modified to perform the application.